package org.javaboy.demo;

import org.javaboy.consumer.RoleService;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Demo01 {
    public static void main(String[] args) {
        //创建容器，但是不要指定配置文件
        ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext();
        //这里可以传入多个不同的配置文件，后面的配置文件中的 bean 将前面的覆盖了
        ctx.setConfigLocations("merchant_beans.xml","consumer_beans.xml");
        //这个属性默认为 true，就是允许后来的 bean 定义覆盖前面的 bean 定义
        //设置为 false，就不允许 bean 定义的覆盖，如果出现了同名的 bean，就直接报错
        ctx.setAllowBeanDefinitionOverriding(false);
        //不管是 Java 配置，还是 XML 配置，容器真正开始初始化是从 refresh 方法开始的
        ctx.refresh();
        org.javaboy.consumer.RoleService rs1 = ctx.getBean(org.javaboy.consumer.RoleService.class);
//        org.javaboy.demo.merchant.RoleService rs2 = ctx.getBean(org.javaboy.demo.merchant.RoleService.class);
        System.out.println("rs1 = " + rs1);
//        System.out.println("rs2 = " + rs2);
    }
}
